home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / Archivers / S-Pack / S-Pack.doc < prev    next >
Text File  |  1996-09-26  |  16KB  |  381 lines

  1.  
  2.  
  3.                             S - P A C K V1.4 
  4.  
  5.  
  6.     S-PACK compresses and packs disks, HD partitions, drawers, and files into
  7.  as small a volume as possible.  It can be used as an archiver, HD Backup, for
  8.  preparing files for data transmission, and anywhere space on disks needs to
  9.  be used economically.
  10.  
  11.  
  12.    CALLING S-PACK
  13.  
  14.    WorkBench:   Click the icon.
  15.    CLI:         Enter "S-PACK", use RUN if you wish.
  16.  
  17.     there are no switches or tool types required.
  18.  
  19.  
  20.    CREATING PACKS
  21.  
  22.    When S-Pack is called a requester will appear.  At the top are four mode
  23.   buttons, one for each of the available modes:
  24.  
  25.    PACK:    Click if you are going to make a new Pack.
  26.  
  27.    UNPACK:  Click if you want to unpack an existing Pack.
  28.  
  29.    INDEX:   Click to extract the index from a Pack.
  30.  
  31.    EXTRACT: Click to extract a single file from a PACK.
  32.  
  33.  
  34.    Below these are four string gadgets.  When a mode gadget is switched on
  35.   any string gadgets not required for that mode will be shaded.
  36.  
  37.    FILES:   used in Pack and Extract.
  38.  
  39.       Pack mode:   Either enter the disk, HD partition, drawer or file to be
  40.                  packed, or if more convenient, create a text file which
  41.                  lists the disks, partitions, drawers, and individual files
  42.                  to be included.  Partitions/disks must be terminated `:',
  43.                  and each entry must be terminated by pressing the `RETURN'
  44.                  key.  An example of a list might be:
  45.  
  46.                    File: ram:paklist:
  47.  
  48.                     HD1:
  49.                     df0:apples
  50.                     df1:citrus/oranges
  51.                    
  52.                    Enter the list file name into the requester preceded by
  53.                  `LIST'.  e.g LISTram:paklist.  
  54.               
  55.       Extract mode: enter the file to be extracted .  Filename should be
  56.                    written as it appears in the index, however it is not
  57.                    case-sensitive and the wildcard `?' is recognised.
  58.  
  59.     Clicking the button just to the left of the gadget will bring up a file
  60.     requester if you have either Arp.library or ASL.library.
  61.  
  62.  
  63.    PACKFILE: used in all modes.
  64.  
  65.      Pack mode:   Enter drive, path and name for the pack; the programme will
  66.                 add .PACK  or .SE to the name that you enter here, according
  67.                 to whether the Pack is self-unpacking or not.  If a floppy
  68.                 drive is called put a disk - normally empty - in the required
  69.                 drive, and QUOTE THE DRIVE (eg df1:) and NOT the disk name.
  70.                 Existing data on the disk will NOT be deleted. 
  71.   
  72.      Unpack/Index/Extract:  Enter the full name and path to the Pack,
  73.                 INCLUDING ANY TERMINATING .PACK or .SE.  If unpacking or
  74.                 getting an index from floppies put the LAST disk of the pack
  75.                 in whatever drive is designated.
  76.   
  77.      A button is again provided for a file requester.  The output may need to
  78.     be modified to ensure that floppies are referred to by DRIVE and not NAME
  79.     (for multi-disk packs).
  80.  
  81.  
  82.    TO: used in Unpack, List and Extract
  83.  
  84.      Unpack mode:  Destination for the unpacked files.   Entry can be a
  85.                 disk, HD partition or drawer.  If a disk or HD partition you
  86.                 must end with ":".  If just a name is entered the program
  87.                 will open a drawer of that name in the Current Directory,
  88.                 and use that.   Default destination is a drawer "Output"
  89.                 opened in the current directory.  If the destination is a
  90.                 floppy it must be quted by DRIVE name, not disk name.
  91.                 
  92.      Index mode:   Enter filename and path for the extracted index.  Default
  93.                 is "RAM:List".  
  94.  
  95.      Extract mode: Destination for the extracted file.  May be a disk, HD
  96.                 partition or drawer.  Comments at Unpack mode above apply.
  97.                 Default is "RAM:Extract"
  98.  
  99.      A button is provided for a file requester.  Again modify the output
  100.     if necessary to ensure that floppies are referred to by drive, not name.
  101.  
  102.  
  103.    TEMP FILES:     can be used in all modes.
  104.  
  105.      When packing or unpacking heavy use is made of intermediate files,
  106.     by default opened in RAM:T.  Where ram is limited it can be useful to
  107.     shuffle these temporary files off to a disk or HD partition.  Enter the
  108.     required drive or partition here, terminating with ":".  The programme
  109.     will add "T" to the drive and if necessary open the new drawer.
  110.          
  111.  
  112.    Below these string gadgets are four more buttons:
  113.  
  114.     OK:  Accepts the entries and executes.
  115.  
  116.     SE:  Used only when Packing.  Adds a self-unpacking header (6600 bytes)
  117.         and turns the pack into an executable programme.
  118.        
  119.     RECOMP:  Used only during Packing.  If a file compressed with Power
  120.         Packer or the standard P-Compress code is encountered it will be
  121.         re-compressed using S-PACK's more efficient compressor (the same as
  122.         the SuperC option of P-Compress2).  This will reduce the size of the 
  123.         completed pack.  On unpacking, such files will be decompressed and
  124.         not restored to their original state.  This may be the normal option
  125.         if S-Pack is being used as an Archiver.
  126.  
  127.           If RECOMP is NOT called the PACK will be a little larger, but on
  128.         unpacking such files will reappear in their original PP'd or P-
  129.         Compressed state.  This will be the normal option for Backup packs.
  130.  
  131.     CANCEL:  Clear any entries.
  132.  
  133.     To quit, click the close gadget in the top left corner.
  134.  
  135.  
  136.   MULTIDISK operations.
  137.  
  138.     Of necessity any programme used for backing up a hard disk must be
  139.    capable of filling and restoring multiple disks.  With S-Pack multi-
  140.    disk archives can also be created (there is no fundamental difference
  141.    between a Pack made for HD Backup and one made for an Archive).  During
  142.    Packing a requester will call for a new disk when the current one is
  143.    full - insert an empty disk, or if you want to end the operation click
  144.    "Abort".  Insertion of a new disk will automatically be recognised.
  145.  
  146.     During other operations specific disks (Disk[n], first disk, last disk)
  147.    may be called.  Click "abort" or insert the required disk.  During
  148.    unpacking the programme will call for a new disk if it finds that there
  149.    is insufficient space on the current disk for the file that is being
  150.    unpacked. (Calls for a new disk in a hard drive partition have to be
  151.    ignored and the operation aborted).
  152.  
  153.      IF YOU WANT A MULTIDISK PACK TO HAVE AN ICON, YOU SHOULD PUT IT ON
  154.      THE FIRST DISK OF THE PACK BEFORE YOU START TO CREATE THE PACK
  155.      ITSELF.  (Otherwise there may be no room for it).
  156.  
  157.     Don't be in too much of a hurry when changing disks;  It is vital to
  158.    wait for all disk activity to stop.
  159.  
  160.  
  161.   UNPACKING.
  162.  
  163.    NON-SELF-UNPACKING PACKS:
  164.  
  165.     Call S-pack, If the pack is on floppies put the LAST disk of the pack in
  166.    a floppy drive, click UNPACK and complete the requester.  The programme
  167.    will first read the index, ask for the first disk, then start unpacking,
  168.    calling for new disks as necessary.
  169.  
  170.    SELF-UNPACKING PACKS
  171.  
  172.     A self-unpacking executable will have been produced if the SE button was
  173.    clicked when creating the pack, and can be identified by the .SE
  174.    termination.  In effect the file on the first disk becomes an executable
  175.    and calls continuation data from the remaining disks.
  176.  
  177.     To use an SE pack:
  178.       If the pack is on floppies, put the FIRST disk of the pack in any drive.
  179.     
  180.     WORKBENCH:  Provide the file with a TOOL icon and set two ToolTypes:
  181.  
  182.      DEST=<DESTINATION>  Use upper-case, no gaps.  Enter the drive or drawer
  183.                          into which you want to unpack. Default is ram:X.
  184.  
  185.            eg DEST=DF0:
  186.            or DEST=HD5:apples  A drawer "apples" will be opened if necessary.
  187.   
  188.      TEMP=<TEMPDRIVE>    Use upper-case, no gaps.  Enter the drive to be
  189.                          used for temporary files.  Default is ram:.  Do not
  190.                          omit the `:'.
  191.  
  192.           eg TEMP=DF0:   Drawer DF0:T will be opened   
  193.           
  194.  
  195.     CLI:  Call the filename.  Include the terminating .SE if present.  Two
  196.          switches are available matching the two tool-types above:
  197.  
  198.       -d<DESTINATION>  No gap between -d and drive, partition  or drawer.
  199.  
  200.       -t<TEMPDRIVE>    No gap again. Must be a drive or HD partition, not a
  201.                          drawer.
  202.  
  203.            eg:  df2:HD5BackUp.SE -dHD5:apples -tHD4:
  204.  
  205.           This would unpack the file "HD5BackUp.SE" to HD5:apples, using 
  206.         HD4:T for temporary files.  Note the colons in HD5 and HD4; they
  207.         must not be omitted.
  208.  
  209.         Defaults are the same, ram:X for destination and ram: for temps.
  210.  
  211.         If you type the name followed by  `?', eg df2:HDBackUp.SE ?, a
  212.       Usage string "Usage: xxxx.SE -d<destination> -t<tempdrive>" will be
  213.       printed to the screen.
  214.  
  215.     To otain the index for an SE pack, treat it like a non-SE pack - put the
  216.    last disk in a drive, call S-Pack, click LIST and complete the requester.
  217.    Single files cannot be extracted from an .SE pack.
  218.  
  219.  
  220.   FLOPPY DISKS
  221.      
  222.     Disks are not re-formatted or re-named automatically, and the necessary
  223.    number should be cleared and numbered before you start a Pack.  DO NOT
  224.    FORMAT TO THE "FAST FILE SYSTEM" - writing to an FFS disk is a lot slower
  225.    than to a normal disk!  For reasonable writing speed call sys:c/Addbuffers
  226.    with as high a setting as you can afford; packing will be very slow if the
  227.    normal default figure of 5 is left unchanged.  To ensure that follow-up
  228.    disks in multi-disk packs can be recognised always use the DRIVE (eg df0:)
  229.    not the diskNAME.
  230.  
  231.  
  232.   DIALOGUE
  233.     
  234.     The output window will show the name of each file as it is packed or
  235.    unpacked.
  236.  
  237.     During compression or decompression of large files the machine may be
  238.    quiet for some time.  To indicate that work is in progress a dot will be
  239.    printed out at intervals.
  240.       
  241.             
  242.   SPEED.
  243.  
  244.    For maximum speed:
  245.  
  246.     The `ADDBUFFERS' setting should be as high as possible - desirably at
  247.    least 100 for any drive or partition used.  This will of course benefit
  248.    all IO, not just S-Pack.  Remember that each buffer costs you some 500
  249.    bytes of chip memory.
  250.  
  251.     Use the Old File System, not FFS.
  252.  
  253.     If memory is tight, reboot.  This clears fragmentation and improves
  254.    speed by maximising the memory available.
  255.  
  256.     Use RAM for the temporary files.  (Use a floppy only as a last resort).
  257.  
  258.  
  259.   MEMORY CONTROL.
  260.  
  261.     S-PACK can use a lot of memory.  Consider the task of unpacking an .SE
  262.    pack containing a single file of compressed size 1Mbyte (on two disks),
  263.    expanding to 2Mbyte decompressed:
  264.  
  265.     When the file is called the whole executable - on the first disk - is
  266.    loaded into memory like any other executable.   typically   840 Kbytes
  267.  
  268.     Then the two parts are assembled in a temporary file      1000 Kbytes
  269.  
  270.     Next provision for decompression is made:
  271.                                filesize(compressed) +130K     1130 Kbytes      
  272.        
  273.     If (for speed) you are unpacking to ram:       add        2000 Kbytes
  274.  
  275.                                                    Total      4970 Kbytes   
  276.  
  277.     This can be reduced to some 1.14 Mbytes:
  278.  
  279.    1. Reduce the size of the executable part (it must have at least the SE
  280.     header and the start of the first file to be included in the pack - say
  281.     8000 bytes) to a minimum by filling all but some 8000 bytes with rubbish
  282.     before creating the pack, then delete the rubbish.  Saves  832 Kbytes.
  283.       
  284.    2  Locate temporary files anywhere there is 1Mbyte to spare - a hard
  285.      disk partition.  A floppy could be used for smaller files but would
  286.      slow operations considerably.                      Saves 1000 Kbytes
  287.  
  288.    3. Pack/Unpack directly to the final destination.    Saves 2000 Kbytes.
  289.      
  290.     If these steps are taken (where relevant) calculate memory usage as:
  291.  
  292.       Unpack
  293.          130K + largest file (compressed size).
  294.  
  295.       Pack
  296.          300K + largest file (uncompressed size) 
  297.  
  298.    but allow as large a safety factor as you can to ensure that problems
  299.    with fragmented memory are avoided.
  300.  
  301.     
  302.   RECOVERY
  303.  
  304.     One of the features of S-PACK is the ability to recover the bulk of data
  305.    even if one of the disks in the pack develops a fault.  Disks prior to
  306.    the faulty one should unpack correctly.
  307.  
  308.     First run the damaged disk through DISKSALV or a similar recovery
  309.    programme, and try to unpack again.
  310.  
  311.     If still faulty, extract the index.  This will always be possible if the
  312.    last disk is OK, and MAY be possible even if there is a fault on this disk.
  313.    
  314.     Using the index and the EXTRACT option of S-PACK extract files from disks
  315.    following the faulty disk (non-SE packs only).
  316.  
  317.     If the faulty disk can be read at all use the EXTRACT option to get as
  318.    many files from it as possible (non-SE packs only).  Success will depend
  319.    on the precise nature of the fault.
  320.  
  321.     Finally try to load the faulty disk into one of the programmes that 
  322.    allow hex files to be read and written to, and allow the extraction of
  323.    sections of a file (HEX, BEAV, FILEMASTER). If the pack file on the disk
  324.    can be loaded, individual files can be extracted using this format data:
  325.  
  326.      The format of each file is:
  327.  
  328.      Marker:            FI (2 bytes)
  329.                         serial number (2 bytes). Bit 15 will be set if the
  330.                           file is not compressed.
  331.     
  332.      Uncompressed file:
  333.                         size (4 bytes)
  334.                         data        
  335.        To extract the file just copy the data section to a new file. 
  336.  
  337.      Compressed file:
  338.                         uncompressed size (4 bytes)
  339.                         compressed size (4 bytes)
  340.                         crc (2 bytes)
  341.                         data
  342.        To extract the file copy the whole to a new file and change the first
  343.       4 bytes (marker + serial number) from FIxx to HILH.  You now have a file
  344.       which can be de-compressed by P-Compress2, or if a text can be read by
  345.       and saved in clear from the latest version of P-Reader. (V7.1).
  346.       Alternatively S-PACK the extracted file using the "RECOMP" option and
  347.       then unpack it.
  348.     
  349.      Finally, even if the disk itself is damaged so severely that the PACK
  350.     file on it cannot be read as a file, it should still be possible to
  351.     extract sectors using Nic Wison's TRACKDOS and to reconstitute individual
  352.     files from these.  This is not easy.
  353.  
  354.  
  355.  
  356.      
  357.            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  358.  
  359.  
  360.    The compression code used is based on that used in Matthias Meixner's 
  361.   SHRINK archiver, modified to improve speed.  A large measure of the
  362.   credit for S-Pack's performance should be given to Matthias Meixner for
  363.   this extremely efficient code.  
  364.   
  365.    S-Pack is Freeware.  It may be copied and distributed freely and used
  366.   without charge for non-commercial purposes.  Authority for commercial
  367.   use should be obtained from the author below.
  368.  
  369.    No responsibility can be accepted for any loss occasioned by use of the
  370.   programme.
  371.  
  372.  
  373.   Chas A. Wyndham,
  374.   1265 Canning Mills Road,
  375.   Roleystone,
  376.   WA 6111.
  377.   Australia 
  378.  
  379.  
  380.  
  381.